#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

struct node{
	int d,h;
};

int main()
{
	int n;
	int ret=0;
	cin>>n;
	vector<node> v;
	for(int i=0;i<n;i++)
	{
		node t;
		cin>>t.d>>t.h;
		v.push_back(t);
	}
	sort(v.begin(),v.end(),[](const node& p1,const node& p2){
		if(p1.d==p2.d)
		{
			return p1.h<p2.h;
		}	
		return p1.d>p2.d;
	});
	int maxh=0;
	for(int i=0;i<n;i++)
	{
		if(maxh<=v[i].h)
		{
			ret++;
		}
		if(v[i].h>maxh)
			maxh=v[i].h;
	}
	cout<<ret<<endl;
	return 0;
}
